$(NM) -n $(TARGET)-syms | grep -v '\( [aUw] \)\|\(__crc_\)\|\( \$[adt]\)'\
> $(BASEDIR)/System.map
+# Headers do not depend on auto-generated header, but object files do.
HDRS := $(subst $(BASEDIR)/include/asm-ia64/asm-xsi-offsets.h,,$(HDRS))
-asm-offsets.s: asm-offsets.c $(BASEDIR)/include/asm-ia64/.offsets.h.stamp $(BASEDIR)/include/asm-ia64/asm-xsi-offsets.h
- $(CC) $(CFLAGS) -S -o $@ $<
+$(ALL_OBJS): $(BASEDIR)/include/asm-ia64/asm-xsi-offsets.h
+
+asm-offsets.s: asm-offsets.c $(BASEDIR)/include/asm-ia64/.offsets.h.stamp
+ $(CC) $(CFLAGS) -DGENERATE_ASM_OFFSETS -DIA64_TASK_SIZE=0 -S -o $@ $<
asm-xsi-offsets.s: asm-xsi-offsets.c $(HDRS)
$(CC) $(CFLAGS) -S -o $@ $<
|| ln -s ../../../include/asm-x86/hvm/vioapic.h $(BASEDIR)/include/asm-ia64/hvm/vioapic.h
[ -e $(BASEDIR)/arch/ia64/vmx/hvm_vioapic.c ] \
|| ln -s ../../../arch/x86/hvm/vioapic.c $(BASEDIR)/arch/ia64/vmx/hvm_vioapic.c
-# Solve circular reference on asm-offsets.h
- [ -f $(BASEDIR)/include/asm-ia64/asm-offsets.h ] \
- || echo "#define IA64_TASK_SIZE 0" > $(BASEDIR)/include/asm-ia64/asm-offsets.h
- [ -f $(BASEDIR)/include/asm-ia64/asm-xsi-offsets.h ] \
- || touch $(BASEDIR)/include/asm-ia64/asm-xsi-offsets.h
-#Bad hack. Force asm-offsets.h out-of-date
- sleep 1
- touch $@
# I'm sure a Makefile wizard would know a better way to do this
xen.lds.s: xen/xen.lds.S
endif
LDFLAGS := -g
+
+# Additionnal IA64 include dirs.
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/linux-null/asm/*.h)
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/linux-null/asm/sn/*.h)
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/linux-null/linux/*.h)
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/linux-xen/asm/*.h)
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/linux-xen/asm/sn/*.h)
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/linux-xen/linux/*.h)
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/linux/*.h)
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/linux/asm-generic/*.h)
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/linux/asm/*.h)
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/linux/byteorder/*.h)
+HDRS += $(wildcard $(BASEDIR)/include/asm-ia64/hvm/*.h)
#include <xen/softirq.h>
#include <xen/mm.h>
#include <xen/iocap.h>
+#include <asm/asm-xsi-offsets.h>
#include <asm/ptrace.h>
#include <asm/system.h>
#include <asm/io.h>
#include <asm/vhpt.h>
#include <asm/debugger.h>
#include <asm/fpswa.h>
+#include <asm/asm-xsi-offsets.h>
extern void die_if_kernel(char *str, struct pt_regs *regs, long err);
/* FIXME: where these declarations shold be there ? */
#include <asm/processor.h>
#include <asm/system.h>
#include <asm/debugger.h>
+#include <asm/asm-xsi-offsets.h>
#include <public/arch-ia64.h>
#include <asm/processor.h>
#include <asm/pgtable.h>
#include <asm/vhpt.h>
+#include <asm/asm-xsi-offsets.h>
#include <public/arch-ia64.h>
// Change rr7 to the passed value while ensuring
#ifndef __IA64_OFFSETS_H
#define __IA64_OFFSETS_H
+#ifndef GENERATE_ASM_OFFSETS
#include <asm/asm-offsets.h>
-#include <asm/asm-xsi-offsets.h>
+#endif
#endif /* __IA64_OFFSETS_H */